# 使用 OpenJDK 21 作为基础镜像，该镜像包含 JDK 21 环境
# 该镜像适用于需要编译或运行基于 JDK 21 的 Java 应用程序
FROM openjdk:21

# 数据卷
VOLUME /data/webServer
VOLUME /data/webServer/logs

# 设置容器中的工作目录为 /data/webServer
# 所有后续操作（如文件复制、命令执行等）都会基于该目录进行
WORKDIR /data/webServer

# 将本地的 JAR 文件 复制到指定容器的目录下
# COPY 命令将指定路径的文件从构建上下文复制到镜像中的目标路径
COPY ug-admin-1.0.0.jar /data/webServer/ug-admin.jar

# 暴露容器的 8415端口，使得主机能够与容器的指定端口进行通信
# 通常用于 Web 服务或应用程序监听端口
# 可以根据应用需要更改为其他端口号

EXPOSE 8415

# 定义容器启动时的默认命令，使用 ENTRYPOINT 设置为 java -jar 来启动应用
# 这行命令会在容器启动时运行 Java 应用，加载指定的 JAR 文件
# 如果没有其他命令传入，ENTRYPOINT 将执行默认的 java -jar jar包名称

ENTRYPOINT ["java", "-jar", "ug-admin.jar", "&"]